import { defineStore } from 'pinia'
import { ref } from 'vue'
import type { User } from '@/types/user'

// 创建仓库
export const useUserStore = defineStore(
  'cp-user',
  () => {
    // 用户信息全局数据
    const user = ref<User>()

    // 设置用户信息，登录之后使用
    const setUser = (userInfo: User) => {
      user.value = userInfo
    }

    // 清空用户信息，退出登录时使用
    const delUser = () => {
      user.value = undefined
    }

    return { user, setUser, delUser }
  },
  // 开启持久化（本地存储，默认使用localStorage）
  {
    persist: true
  }
)
